package tadp.tp.domain;

public class HorarioDeReuniones {
	private String horaComienzo;
	private String horaFin;
	private Fecha fecha;
	
	
	public HorarioDeReuniones(String horarioInicial, String horarioFinal, Fecha fecha) {// constructor :D 												 
		this.setHoraComienzo(horarioInicial);
		this.setHoraFin(horarioFinal);
		this.setFecha(fecha); 
	}

	public boolean estaOcupado(String horarioInicial, String horarioFinal, Fecha unaFecha) { 
		Double doubleHorarioInicialNuevo = Double.parseDouble(horarioInicial);
		Double doubleHorarioFinalNuevo = Double.parseDouble(horarioFinal);
		Double doubleHoraComienzoExistente = Double.parseDouble(this.getHoraComienzo());
		Double doubleHoraFinExistente = Double.parseDouble(this.getHoraFin());

		if(unaFecha.getDia() == this.getFecha().getDia()
				&& unaFecha.getMes() == this.getFecha().getMes())  
		{
			return ((doubleHorarioInicialNuevo >= doubleHoraComienzoExistente) && (doubleHorarioInicialNuevo <= doubleHoraFinExistente))
					|| ((doubleHorarioFinalNuevo <= doubleHoraFinExistente) && (doubleHorarioFinalNuevo >= doubleHoraComienzoExistente))
					|| ((doubleHorarioInicialNuevo <= doubleHoraComienzoExistente) && (doubleHorarioFinalNuevo >= doubleHoraFinExistente));
		}
		return false;
	}
	
	public String getHoraComienzo() {
		return horaComienzo;
	}

	public void setHoraComienzo(String horaComienzo) {
		this.horaComienzo = horaComienzo;
	}

	public String getHoraFin() {
		return horaFin;
	}

	public void setHoraFin(String horaFin) {
		this.horaFin = horaFin;
	}

	public Fecha getFecha(){
		return fecha;
	}
	
	private void setFecha(Fecha fecha) {
		this.fecha = fecha;	
	}
}
